Подбор плотностей тел
Подбор плотностей тел
Данная процедура решает обратную задачу - подбор плотностей блоков в сеточной 3D модели, заданной через 3D ТОС, по соответствующему ей гравитационному полю, заданному сеточной 2D моделью через 2D ТОС.
Исходные данные
- 3D ТОС, содержащая классификационное свойство, задающее разбиение пространства на блоки.
- 2D ТОС, содержащее свойство, задающее гравитационное поле.
- (опционально) два свойства в 3D ТОС, задающие ожидаемую плотность блока и разброс.
Формализм
Каждому классу (блоку) с индексом разбиения на классов (блоков) соответствует модель поля , которое порождал бы блок, состоящий из ячеек класса с эффективной плотностью . Множество всех возможных составляет линейное пространство с векторами .
Измеренное гравитационное поле обозначим . Тогда плотности блоков определяются решением линейной задачи:
(1)
где матрица состоит из вектор-столбцов . Так как система (1) наверняка несовместна, вместо ней решается задача минимизации функционала:
,
Где – евклидова норма (длина вектора).
Считаем, что поле известно с точностью до константы. Добавляется единичный вектор и задача сводится к отысканию минимума следующего функционала:
, (2)
.
Чтобы исключить единичный вектор, каждый вектор-столбец и приводят к виду, ортогональному :
Тогда задача выглядит следующим образом:
</math>.
В случае, если задача некорректна, можно использовать регуляризацию Тихонова в её простейшем случае:
(3)
Регуляризация уменьшает некорректность, перемещая решение ближе к нулевому вектору за счёт ухудшения точности приближения вектора . Параметр определяет, насколько сильно влияет регуляризация на решение, и меняется в диапазоне от 0 (тогда ) до 1 (тогда и его минимум достигается при ).
Функционал (3) достигает минимума на:
Задача с ограничениями
Для решения задачи с ограничениями используется алгоритм BVLS[1].
Особенности
Если в исходных данных отсутствуют пропуски, то для двух наборов значений плотностей, отличающихся на константу ( и ), их поля равны (). То есть, плотности заданы с точностью до некоторой константы. Также при некоторых условиях такая особенность может иметь место и для некоторого подмножества тел (классов). При использовании регуляризации значение подбирается так, чтобы плотности были близки к нулю, иначе либо определяется исходя из заданных ограничений, либо выбирается случайно, в том числе может принять и неадекватно большую (положительную или отрицательную) величину. В этом случае надо относиться к плотностям как к эффективным, и далее подобрать и прибавить некоторую константу.
Алгоритм
Процедура состоит в выполнении следующих шагов:
- Анализ классификационного свойства, во время которого выясняется количество классов и их идентификаторы.
- Вычисление полей блоков – вектор-столбцов матрицы .
- Вычисление матрицы и вектора .
- Вычисление . Если матрица не имеет обратной, выдаётся соответствующее сообщение; в этом случае рекомендуется увеличить параметр .
- В случае отсутствия ограничений - через разложение матрицы .
- В случае заданных ограничений - через алгоритм BVLS[1].
- Запись результата в целевую 3D ТОС в виде распределения плотностей.
Параметры
- Исходная ТОС 2D и исходное свойство: ТОС и имя свойства, содержащие исходное поле.
- Экстраполяция - использовать ли зеркальную экстраполяцию. Если по каким-то причинам требуется использовать стандартную экстраполяцию, то её необходимо сделать отдельно.
- Высота поля (Z) - высота, на которой находится плоскость, содержащая сетку, в которой задано поле, м.
- Регуляризация - выполнять ли регуляризацию.
- Альфа - коэффициент регуляризации .
- Альфа, дБ - коэффициент регуляризации в логарифмических единицах.
- ТОС 3D - ТОС 3D, содержащая классификацию и ограничения, если нужны.
- Имя классового свойства - имя свойства в ТОС 3D, определяющего разбиение на блоки.
- Использовать ограничения - использовать ли ограничения на вычислемые плотности блоков. При заданных ограничениях все плотности должны быть внутри интервала.
- Середина интервала - свойство в 3D ТОС, задающее для каждого блока центр интервала, в котором ищется решение.
- Полуширина интервала - свойство в 3D ТОС, задающее для каждого блока полуширину интервала, в котором ищется решение.
- Целевое свойство - имя свойства в ТОС 3D, в которое записывается результат - распределение плотностей.
Рекомендации по использованию
Перед запуском алгоритма необходимо убедиться, что разбиение 3-хмерной ТОС «разумно».
Сложность представляет подбор параметра силы регуляризации , так как в нём мало предметного смысла. Следует начинать с . При этом следует сохранять поля классов, так как эта процедура – самая времязатратная. Если не удаётся рассчитать обратную матрицу или значения плотностей варьируются в областях, далёких от допустимых или разумных, следует увеличивать параметр .
Регуляризация и ограничения
На данный момент нет возможности задать одновременно и ограничения, и коэффициент регуляризации.
Список литературы
1. P.B. Stark, R.L. Parker "Bounded-Variable Least-Squares: an Algorithm and Applications", Computational Statistics. 10:129-141
